狗狗品种分类器
提交文件
| Criteria | Meet Specification |
|---|---|
|
提交文件 |
本次提交包含所有必需的文件。 |
第一步:检测人类
| Criteria | Meet Specification |
|---|---|
|
问题 1:评估人脸检测器 |
提交包含狗狗与人脸数据集前 100 张图片中,检测出的人脸的百分比。 |
|
问题 2: 评估人脸检测器 |
表明 Haar 级联检测是否是一种合适的人脸检测技术。 |
第二步:检测狗狗
| Criteria | Meet Specification |
|---|---|
|
问题 3:评估狗狗检测器 |
提交包含狗狗与人脸数据集前 100 张图片中,检测出的狗狗的百分比。 |
第三步:建立一个CNN区分狗狗的种类(从头开始)
| Criteria | Meet Specification |
|---|---|
|
模型架构 |
提交指明了一个 CNN 模型架构。 |
|
测试模型 |
训练过的模型在测试数据集上至少达到 1% 的准确度。 |
|
训练模型 |
提交指出了训练算法所用的 epochs 数。 |
第五步:建立一个CNN区分狗狗的种类
| Criteria | Meet Specification |
|---|---|
|
获取关键特征 |
提交下载了对应于 Keras 与训练模型(VGG-19, ResNet-50, Inception, or Xception)的关键特征。 |
|
模型架构 |
提交指明了一种模型架构 |
|
编译模型 |
提交通过说明代价函数与优化方式编译结构。 |
|
问题 5:模型架构 |
提交应指出为什么这一架构会在分类任务中成功,以及为什么早期的尝试不成功。 |
|
训练模型 |
提交使用模型的检查点训练模型,并将拥有最佳交叉验证损失的模型权重保存下来。 |
|
读取拥有最佳交叉验证损失的模型。 |
提交读取了模型获得最小交叉验证损失的模型权重。 |
|
测试模型 |
测试数据集上的准确度达到了 60% 或更多。 |
|
用模型预测狗狗种类 |
提交包含一个满足如下要求的函数,它以文件路径作为输入,并返回由 CNN 预测的狗品种。 |
第六步:写出你自己的算法
| Criteria | Meet Specification |
|---|---|
|
写出你自己的算法 |
提交使用第五步建立的 CNN 模型检测狗的种类。提交应对不同种类的输入图片有着不同的输出结果,并且提供实际(或最接近的)狗的种类。 |
第七步:测试你的算法
| Criteria | Meet Specification |
|---|---|
|
用样例图片测试你的算法 |
提交应至少检测了 6 张图片,其中至少包含了 2 张人脸图片与 2 张狗狗图片。 |
Tips to make your project standout:
(Presented in no particular order …)
(1) Augment the Training Data
Augmenting the training and/or validation set might help improve model performance.
(2) Turn your Algorithm into a Web App
Turn your code into a web app using Flask or web.py !
(3) Overlay Dog Ears on Detected Human Heads
Overlay a Snapchat-like filter with dog ears on detected human heads. You can determine where to place the ears through the use of the OpenCV face detector, which returns a bounding box for the face. If you would also like to overlay a dog nose filter, some nice tutorials for facial keypoints detection exist here .
(4) Add Functionality for Dog Mutts
Currently, if a dog appears 51% German Shephard and 49% poodle, only the German Shephard breed is returned. The algorithm is currently guaranteed to fail for every mixed breed dog. Of course, if a dog is predicted as 99.5% Labrador, it is still worthwhile to round this to 100% and return a single breed; so, you will have to find a nice balance.
(5) Experiment with Multiple Dog/Human Detectors
Perform a systematic evaluation of various methods for detecting humans and dogs in images. Provide improved methodology for the
face_detector
and
dog_detector
functions.